In present computing environments, “Backup” refers to making a copy of data such that the copy may be used to restore the original data after a data loss event. The copy is typically stored on media separate than the primary storage device. Backups are useful for two reasons. The first is to restore a data state following a disaster. The second is to restore small numbers of files after they have been accidentally deleted or corrupted.
A full backup plus incremental backup stores several copies of the data. The first backup is a full backup, meaning all data on the primary storage device is copied to a separate backup storage device. After that, incremental backups are made, where only the files that have changed since the previous full or previous incremental backup was made. Restoring the whole system requires restoring the full backup and all the incremental backups. Incremental backups save time and space because files that have not changed are not unnecessarily backed up.
Remote or online backups may provide for backing up data over a network. Typically, a client software program runs on a schedule (e.g., once a day) and collects, compresses and transfers the data to a remote backup server over a network (e.g., the Internet). Regularly scheduled remote backups of large amounts of data (e.g., large database files) may impact network throughput. Generally speaking, backing up and restoring data in a fast, reliable fashion may be very complex.